package com.team.recruitment_management_system.pojo.dto.hr;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.util.Date;

@Data
@Schema(description = "添加HR信息对象")
public class AddHrInfoDto {

    /**
     *
     */
    @NotNull(message = "公司ID不能为空")
    @Schema(description = "公司ID")
    private Integer companyId;

    /**
     *
     */
    @Schema(description = "用户ID")
    @NotNull(message = "用户ID不能为空")
    private Integer userId;

    /**
     * 真实姓名
     */
    @Schema(description = "真实姓名")
    @NotEmpty(message = "真实姓名不能为空")
    private String realname;

    /**
     * 性别(1男2女)
     */
    @Schema(description = "性别")
    @NotNull(message = "性别不能为空")
    private Integer gender;

    /**
     * 在职岗位
     */
    @Schema(description = "在职岗位")
    @NotEmpty(message = "在职岗位不能为空")
    private String job;

    /**
     * 邮箱
     */
    @Schema(description = "邮箱")
    @Email(message = "输出正确格式的邮箱")
    private String email;

    /**
     * 电话
     */
    @Schema(description = "电话")
    @NotEmpty(message = "电话不能为空")
    private String phone;

    /**
     * 出生日期
     */
    @Schema(description = "出生日期")
    @NotNull(message = "出生日期不能为空")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date birthdate;

    /**
     * 入职日期
     */
    @Schema(description = "入职日期")
    @NotNull(message = "入职日期不能为空")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date onboardingTime;
}
